﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;



namespace Query
{

    [ServiceContract]
	public interface IGetService
	{
        [OperationContract]
        [WebInvoke(Method = "GET",
            RequestFormat = WebMessageFormat.Xml,
            ResponseFormat = WebMessageFormat.Xml,
            UriTemplate = "ChartDay/{date}/{currencyname}")]
        List<Rate> ChartDayXML(string date, string currencyname);

        [OperationContract]
        [WebInvoke(Method = "GET",
            RequestFormat = WebMessageFormat.Xml,
            ResponseFormat = WebMessageFormat.Xml,
            UriTemplate = "ChartWeek/{date}/{currencyname}")]
        List<Rate> ChartWeekXML(string date, string currencyname);

        [OperationContract]
        [WebInvoke(Method = "GET",
            RequestFormat = WebMessageFormat.Xml,
            ResponseFormat = WebMessageFormat.Xml,
            UriTemplate = "ChartMonth/{date}/{currencyname}")]
        List<Rate> ChartMonthXML(string date, string currencyname);

        [OperationContract]
        [WebInvoke(Method = "GET",
            RequestFormat = WebMessageFormat.Xml,
            ResponseFormat = WebMessageFormat.Xml,
            UriTemplate = "ChartYear/{date}/{currencyname}")]
        List<Rate> ChartYearXML(string date, string currencyname);

        [OperationContract]
        [WebInvoke(Method = "GET",
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "ChartDay/json/{date}/{currencyname}")]
        List<Rate> ChartDayJson(string date, string currencyname);

        [OperationContract]
        [WebInvoke(Method = "GET",
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "ChartWeek/json/{date}/{currencyname}")]
        List<Rate> ChartWeekJson(string date, string currencyname);

        [OperationContract]
        [WebInvoke(Method = "GET",
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "ChartMonth/json/{date}/{currencyname}")]
        List<Rate> ChartMonthJson(string date, string currencyname);

        [OperationContract]
        [WebInvoke(Method = "GET",
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "ChartYear/json/{date}/{currencyname}")]
        List<Rate> ChartYearJson(string date, string currencyname);
	}

}
